Fix schema.sql conflicts with migrations on fresh DB install #215
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Issue
When running the API on a clean database instance, migrations were failing with the following errors:
Error 1: Duplicate column 'publishOn'
Error 2: Table modification fails for hosterPodcastMetrics
Root Cause
schema.sqlcontained changes that were supposed to be applied via migrations:publishOncolumn (added by migration 6)listenersandsubscribersenum values forhosterPodcastMetrics(added by migration 17)When migrations ran after
schema.sqlon a fresh DB, they tried to add/modify things that already existed.Solution
Remove migration changes from
schema.sqlso it reflects the base state before any migrations run. Migrations then apply changes incrementally:publishOncolumn fromanchorPodcastEpisodestable (will be added by migration 6)'listeners'and'subscribers'fromhosterPodcastMetricsdimension enum (will be added by migration 17)This ensures
schema.sqland migrations don't conflict on fresh installs while maintaining compatibility with existing databases that have already run these migrations.Testing
Tested with:
All migrations now run successfully on a fresh database.